package cn.topevery.garden.dal.dao;

import cn.topevery.garden.entity.oneMap.CountVO;
import cn.topevery.garden.entity.po.BaseInfo;
import cn.topevery.garden.entity.query.BaseInfoQuery;
import cn.topevery.garden.entity.vo.BaseInfoVO;
import cn.topevery.garden.framework.base.BaseDao;
import hw.topevery.framework.db.entity.DataPager;

import java.util.List;

/**
 * @author code-generate
 * @date 2022-01-05
 */
public interface BaseInfoDao extends BaseDao<BaseInfo> {


    /**
     * 获取列表
     *
     * @param query
     */
    DataPager<BaseInfoVO> listPage(BaseInfoQuery query);

    BaseInfo getEntityByColumn(String key, String value);

    DataPager<BaseInfo> getPage(BaseInfoQuery query);

    void commit(BaseInfo baseInfo, Integer userId);

    void deleteById(Integer id, Integer userId);

    List<CountVO> getSurvey(List<String> types);
}
